Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Моделювання режиму очікування в цифрових пристроях за допомогою оператора wait

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2011
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Моделювання
Група:
КІ-22

Частина тексту файла

Міністерство Освіти і Науки Національний Університет «Львівська політехніка» кафедра ЕОМ Звіт про виконання лабораторної роботи №4 з предмету «Моделювання комп’ютерних систем» на тему : «Моделювання режиму очікування в цифрових пристроях за допомогою оператора wait» Мета роботи: отримати практичні навички застосування оператора wait при моделюванні різних режимів очікування у Active-HDL. Навчитися виконувати порівняння часових діаграм. Основні види застосування оператора wait. Тип оператора wait Опис Приклади  wait for tyme_expression Припиняє процес на визначений час; Час може бути заданий безпосередньо, або як вираз, результатом якого є значення часу. Використовуються в основному для моделювання на випробувальних стендах. wait for 10 ns; wait for ClkPeriod / 2;  wait until condition Припиняє процес доти, доки задана умова не стане істинною завдяки зміні будь-якого сигналу, що містяться в умові. При цьому, якщо сигнал не змінюється, wait until не поновить процес, навіть якщо сигнал задовільняє умову. wait until CLK='1'; wait until CE and (not RST); wait until IntData > 16;  wait on sensitivity_list Припиняє процес доти, доки не відбудеться подія з будь-яким з сигналів, вказаних в списку чутливості. Іншими словами, процес поновлюється тільки тоді, коли зміниться значення хоча б одного сигналу з списку чутливості. wait on CLK; wait on Enable, Data;  складний wait Містить комбінацію двох або трьох різних форм оператора wait. wait on Data until CLK='1'; wait until Clk='1' for 10 ns;   Варіант базового коду : library IEEE; use IEEE.STD_LOGIC_1164.all; entity lab4Int is port( CLK : in STD_LOGIC; AinOut : inout STD_LOGIC; Bout : out STD_LOGIC ); end lab4Int; architecture lab4Arch of lab4Int is signal CLK : std_logic :='0'; begin Pr_CLK :process begin -- формування сигналу CLK end process Pr_CLK; Pr_A: process(CLK) begin if CLK'event and CLK ='1' then Ainout<='1' after 5 ns; elsif CLK'event and CLK='0' then Ainout<='0' after 5 ns; end if; end process Pr_A; Pr_B: process (AinOut) begin if Ainout'event then Bout<= not Ainout; end if; end process Pr_B; end lab4Arch; Результат моделювання для базового коду на рис.№1 / Рис.№1 Варіант коду із застосуванням оператора wait : library IEEE; use IEEE.STD_LOGIC_1164.all; entity lab4Int is port( --CLK : in STD_LOGIC; AinOut : inout STD_LOGIC; Bout : out STD_LOGIC ); end lab4Int; --}} End of automatically maintained section architecture lab4Arch of lab4Int is signal CLK : std_logic :='0'; begin Pr_CLK :process begin CLK <= Not (CLK); wait for 10ns; -- формування сигналу CLK end process Pr_CLK; Pr_A: process begin wait on CLK ; if CLK'event and CLK ='1' then Ainout<='1' after 5 ns; elsif CLK'event and CLK='0' then Ainout<='0' after 5 ns; end if; end process Pr_A; Pr_B: process begin wait until CLK = '1' ; if Ainout'event then Bout<= not Ainout; end if; end process Pr_B; end lab4Arch; На рис.№2 результат виконання коду із застосування оператора wait: / Рис.№2 Результат порівняння зображений на рис.№3 / Рис.№3 В цьому випадку сигнали є інверсія один одного. Якщо змінити в рядку signal CLK : std_logic :='0' , початкове значення сигналу CLK на ‘1’ тоді сигнали будуть ідентичні. Після виконання змін (додавання в коді рядка wait for 30ns)у нас часова діаграма виглядає так, як на рис. №5 / рис.№5 Після зміни затримки на 20нс, і порівнянь з попередньою діаграму, середовище видає повідомлення, що нема ніяких відмін. Висновок : ми ознайомились з оператором wait, і використали його для різних режимів очікування.
Антиботан аватар за замовчуванням

25.11.2012 18:11

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини